package com.tsing.mapper;

import com.tsing.common.result.PageResult;
import com.tsing.pojo.entity.TlPost;
import com.tsing.pojo.entity.TlUser;

import java.util.List;

/**
 * @author 吴阳基
 * @datetime 2023/12/8 11:36
 */
public interface ArticleMapper {
    /**
     * 根据频道id查询帖子
     * @param channelId
     * @return
     */
    PageResult<TlPost> list(Integer channelId,Integer page,Integer size);

    /**
     * 根据对应的用户id查询用户数据
     * @param userId
     * @return
     */
    List<TlUser> userList(Long userId);


    /**
     * 点赞后，增加对应的点赞数
     * @param postId
     * @param likeCount
     * @return
     */
    Integer likeCountAdd(Integer postId, Integer likeCount);

    /**
     * 取消点赞后，删除对应的点赞数
     * @param postId
     * @param likeCount
     * @return
     */
    Integer likeCountDelete(Integer postId, Integer likeCount);

    /**
     * 新增帖子数据
     * @param userId
     * @param title
     * @param image
     * @param createDate
     * @param address
     * @return
     */
    Integer add(Integer userId, String title, String image, String createDate, String address ,String Copywriting, Long channelId);

    /**
     * 根据用户id查询单条用户数据
     * @param userId
     * @return
     */
    TlUser getUserById(Integer userId);

    /**
     * 根据帖子id查询对一个帖子的数据
     * @param postId
     * @return
     */
    TlPost getPostById(Integer postId);

    /**
     * 查询当前用户是否关注发帖作者
     * @param userId
     * @param userId1
     * @return
     */
    Integer getFlag(Integer userId, Integer userId1);

    /**
     * 根据用户id查询所有的帖子
     * @param userId
     * @return
     */
    List<TlPost> postList(Integer userId);
}
